widget: Handle setting clip differently
authorBenjamin Otte <otte@redhat.com>
Fri, 19 Dec 2014 18:05:12 +0000 (19:05 +0100)
committerBenjamin Otte <otte@redhat.com>
Fri, 19 Dec 2014 18:20:07 +0000 (19:20 +0100)
commitd23f3254b7fcef0fc57739ce5cd548742870b119
tree9644632616e62a91f4ef2579a4a07646b19736d7
parentf0a40b1a2365e3357803342c29b89d215a1efe79
widget: Handle setting clip differently

(1) Get rid of supports_clip flag. All widgets (implicitly) support
clip.

(2) Don't reset the clip to { 0, 0, 0, 0 } before the "size-allocate"
signal.

(3) Make gtk_widget_set_allocation() set the clip (to the allocation).
This ensures that eveyr widget has a clip set.
Note: It overrides previous calls to gtk_widget_set_clip(), while in
3.14 this didn't happen.

(4) As the clip is set by gtk_widget_set_allocation() now, don't set
it after the "size-allocate" signal anymore.

This fixes calls to gtk_widget_queue_draw() from inside the
size_allocate vfunc.
gtk/gtkwidget.c